HalBower's Home Page

While the 8-bit CP/M computers may be fading, some of us dinosaurs still keep programming for them. In the process of preparing files for release of the Banked and portable (B/P) Bios, several Y2K and related problems have been uncovered. Fixes for some of the more critical ones (along with some corrected and new Z-System utilities) are here.
    The utility to extract elements from .LBR libraries with create and modify date preservation improperly displays the year (last two) digits for years > 1999 ('01' shows as 'A1'). A new option was also added so that the default date presentation will be either 'dd.mm.yy' or 'mm/dd/yy'. Since this is the recommended program for accessing the remaining packages, the .COM file alone is provided, defaulting to automatically decompress files when extracting. You might want to rename this simply 'LBREXT.COM'.
    LBREXT.COM - CP/M Library Extractor (default is decompress)
    The .LBR file contains source, docs, history and a Config file for the ZCNFG24 utility. ZSLIB, Z3LIB and SYSLIB are required for linking. LBREXT36.LBR - Complete package.
    Version 1.6 (the last one released) of the Z-System Editor (ZDE) does not retain the creation date for files greater than one extent. Since no source for this program was released, only a patch file is available for correction. A configuration flag was also added to set the default 'Auto-Indent' feature for Non-Documents (it currently is always ON when files are first opened). Before you apply this patch, insure that your source ZDE16.COM matches the 'was:' code to avoid corruption (and other interesting side effects).
    ZDE16A.PAT - Assembly patch to fix/modify ZDE16.COM
    The CP/M 2.2 version (at least) of DosDisk(tm) does not correctly convert Dates to MSDOS format when copying files to 5.25" '360k' formatted disks for transferring to MSDOS machines for years > 1999. 2000 will be converted to '80' and 2001 to '29' with additional corruption to the month value (17 July 2001 appears as 17th day, 15th month, 2029 :^) This Assembly patch corrects the problem and _should_ be good until 31 Dec 2076 when the rest of DateStamper(tm) and ZSDOS stamps will fail. WARNING: This has only been tested for the CP/M 2.2 version of DosDisk in the final 1.0 release version with subdirectory support enabled. Check the 'was:' code in the patch source before applying to avoid problems.
    DOSDISK.PAT - Assembly patch for DOSDISK.COM (CP/M 2.2)
    The COPY.COM utility provided with ZSDOS, B/P Bios and on old RBBS systems has a cosmetic Y2K glitch when copying a file where the file already exists at the destination (1999 is 'newer' than 2001). This package corrects the problem.
    COPY173.LBR - Complete package for Copy utility with date preservation
    It is possible that a buggy version of the ZXD Directory listing program has been released since late 1993 and which would not display dates for certain files. This updated package corrects the problem, and also automatically sizes the screen(s) of data (lines and columns) to values in the ZCPR3 Termcap (if one is detected). It also clears up the printed output then the '/p' toggle is passed. NOTE: I usually rename the executable to 'D.COM', set defaults to desired values, place it with other utilities in A15: and set the 'SYStem' and 'PUBlic' bits for fast and easy access.
    ZXD22.LBR - Complete package for Z-System Directory Lister
    To apply .HEX patches (such as the ZDE16 and DosDisk fixes above), a utility such as the venerable MLOAD is usually used. Unfortunately, that program does not work with odd sizes of BDOS and CCP/CPR which are common with the B/P Bios (which allow banking of much of the code) so I wrote one a number of years ago called MYLOAD. This is a re- release of that package, and as with most other utilities, built-in help is available by entering 'MYLOAD //' at the CP/M prompt.
    Rather than access the CDROMs from 'big' machines and then transfer files to CP/M 2.2 machines, a native utility was needed. Thanks to Duncan Elvin who allowed me to use his C code (after converting to assembly...naturally), the CDZSWP Z-System utility was produced. This updated release corrects a bug which sometimes corrupted the program when copying files from CDs to CP/M, and adds another driver. Drivers are now included for the SB180FX, P112 (with SCSI mod per Dave Brooks' site), and a generic one for B/P Bios with SCSI CDROM which can be re-defined to transfer data in 512-byte blocks instead of the normal 2048-byte chunks. A template is also available to help anyone wanting to write one for CDROM drives using 'hms' addressing. This program is inspired by other 'SWEEP'-style programs and uses the ZCPR3 Termcap definitions for screen attributes and the 'WordStar Diamond' for movement.
    ================ ZSDOS/ZDDOS GPL Release ===============
    ZSDOS (Z-System DOS) and the Companion ZDDOS (Z-System DOS with Embedded DateStamper) are enhanced replacements for the CP/M 2.2 Basic Disk Operating System. ZSDOS was a commercial product sold from 1988 through 1998 when the complete package (including source code) was released under the GNU General Public License. These four packages comprise the GPL release:
    ZSDOS3.ZIP - Ascii version of Manual (Formfeeds delimit pages)
    ====== Banked and Portable (B/P) Bios GPL Release ======
    B/P Bios was developed to provide a common interface for CP/M 2.2 compatible systems with provisions to manage more than 64k of physical memory. With permission of Jay Sage, a banked Command Processor Replacement based on ZCPR 3.4 was added with many built-in commands; ZSDOS was banked and extended to include multiple file date/time stamp formats (courtesy of Bridger Mitchell and Joe Wright) and optional directory hashing to speed access. Five hardware platforms were ultimately supported in the commercial release which was sold from 1992 through 1999.
    Packages will be added as they are updated, tested and built.
    BP-MAN.ZIP - Ascii version of manual with embedded FormFeeds (500 kB unzipped)